home *** CD-ROM | disk | FTP | other *** search
/ Network PC / Network PC.iso / amiga utilities / communication / bbs / hydrabbsa8 / changes.txt < prev    next >
Encoding:
Text File  |  1997-11-21  |  48.5 KB  |  1,737 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.                    __________________________________________
  9.                   /                                          \
  10.                  /                                            \
  11.                 :  PLEASE READ ALL OF THIS FILE.  IT CONTAINS  :
  12.                 :    IMPORTANT INFORMATION ABOUT USING HBBS    :
  13.                  \                                            /
  14.                   \__________________________________________/
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. Changes
  22. =======
  23.  
  24. This file details everything I do to hbbs in a coding session starting with
  25. the newest first (so you don't have to scroll to the bottom of the file!)
  26.  
  27. I've noted which versions were alpha releases next to the date, so you can see
  28. just how much work I am doing between releases..
  29.  
  30. Where possible I've detailed the changes under a heading of the program's
  31. filename where code changes have been made,  other changes to the general
  32. setup will just appear under the date.
  33.  
  34. 5/6/7-01-1996
  35. =============
  36.  
  37.    Loads of stuff, configurable prompts now done, check out
  38.    HBBS:System/Data/BBSColours.CFG
  39.    HBBS:Nodes/NodeX/BBSColours.CFG
  40.    HBBS:Conferences/<ConfName>/BBSColours.CFG
  41.  
  42.    I've done sooo much these last 3 days that I forgot to write in this file and
  43.    now I can't remember what I've been doing apart from doing a bit more
  44.    no the fr and olm doors...  added a BBSGlobal->CallsEver (kinda handy..)
  45.    this will be loaded/saved from the HBBS:System/Data/Private file when i implement
  46.    it's usage..
  47.  
  48.    oh yeah, and I added a Flags parameter to the loadconfig so just add
  49.    ,LCFG_NONE to all your current calles to it, check out defines.h to see what's what..
  50.    (they were primally added so i could read ansi strings from a file into a config
  51.    item, at the mo ;'s are used to denote comments, I'll have to change that
  52.    to something else soon..)
  53.  
  54. 04-01-1996
  55. ==========
  56.  
  57.    HBBSCommon.library
  58.    ==================
  59.  
  60.                        =====================================
  61.                        I T ' S   C H A L L E N G E   T I M E
  62.                        =====================================
  63.  
  64.    I can't for the life of me figure out why the bloody hell my new version
  65.    of HBBS_LoadConfig() causes the control program to hand the machine when
  66.    it loads the HBBS:System/Protocols file.  The new version of HBBS_LoadConfig()
  67.    is currently commented out, and the old one is still in use (although it
  68.    has several bugs fixed..)  just change the comments round, re-compile
  69.    and see what I mean...
  70.  
  71.    I've tried allsorts to see what's happening but to no avail, everything
  72.    seems normal! Argh.. I hate bugs like this...
  73.  
  74.    Sooo, if you fix this bug then I'll give you a nice crispy 5 pound note!
  75.    (if you are not from the UK then, erm, well I'll write you a custom door
  76.    or sommat...)
  77.  
  78.    Node
  79.    ====
  80.  
  81.      Implemented the NFLG_CTRLC flag, if a users presses ctrl+c during a getline()
  82.      then the NFLG_CTRLC bit will be set in N_ND->NodeFlags
  83.  
  84.      Added The variables needed to implement OLM's, checkout
  85.  
  86.      N_ND->OLMCount and N_ND->OLMList and struct OLMNode in structures.h
  87.      and NFLG_OLMSWAITING in defines.h.. to add an OLMNode to the OLMList
  88.      call HBBSNode.library's HBBS_AddOLM() function (see HBBSNode.c)
  89.  
  90.      there's also a few more NFLG's to look at.
  91.  
  92.      also note the new GetLine flag, GL_NOOLMS
  93.  
  94.    HBBSCommon.library
  95.    ==================
  96.  
  97.      Added the function HBBS_SendOLM()
  98.      very easy to use and works a treat too!, for an example check out ReadOLM
  99.      and the OnlineMessage (OLM) doors..
  100.  
  101.    OnlineMessage
  102.    =============
  103.  
  104.      created door, installed as OLM
  105.  
  106.      this door sends messages to other nodes.
  107.  
  108.    ReadOLM
  109.    =======
  110.  
  111.      created this SYSTEM door, it's called when the user is at a getline prompt
  112.      automatically, it displays all the queued OLM's one by one and lets the user
  113.      reply to them if they came from another node..  If you send a message from an
  114.      external program you must make sure that you set up the olm so that the user
  115.      cannot reply to it! :-) hehe..
  116.  
  117.    SendOLM
  118.    =======
  119.  
  120.      this is a rather handy AmigaDOS CLI program to send OLM's to nodes, note:
  121.      this is NOT a door!!!   Man HBBS is cool..  do that with /X !
  122.  
  123. 03-01-1996
  124. ==========
  125.  
  126.   MailScan and MailRead
  127.   =====================
  128.  
  129.     Wow, this is cool now..  I've finally finished off the new mail scanning
  130.     part of this door. (apart from the mark as read option)
  131.  
  132.     prior to this version if you scanned mail, but only read a few of the
  133.     mail messages the ones that you didn't read would not appear in the next
  134.     mailscan, they do now! (Check Out HBBS:Mail/Users/<UserID>/UnreadList.CFG)
  135.  
  136.  
  137.   HBBSCommon.library  -> READ THIS!
  138.   ==================
  139.  
  140.     really optimized and bug fixed HBBS_LoadConfig() and HBBS_LoadFile()
  141.     you should find that the whole bbs now speeds up dramatically!!
  142.  
  143.  
  144.   ReLogin
  145.   =======
  146.  
  147.     Created Relogin door, installed as command RL for users with access of 50
  148.     or over.
  149.  
  150.     And yes, the logoff scripts (see below) do get called if you use
  151.     this command! (Unlike /X where you had to logoff and call back if you
  152.     wanted to see updated bulletins that only updated when the logoff script
  153.     was called)
  154.  
  155.   Node
  156.   ====
  157.     Logoff scripts are now implemented, when a user logs off the following
  158.     AmigaDOS scripts are executed (S flag need not be set, they are run via the
  159.     dos C:Execute Command)
  160.  
  161.     HBBS:Scripts/LogOff<nodenum>.script
  162.     HBBS:Scripts/GlobalLogOff.script
  163.  
  164.     both scripts are started with the following parameters
  165.  
  166.     <nodenum> <userid>
  167.  
  168.     if you want to access the users handle from your logoff scripts then use
  169.     the environment variable "HNode<nodenum>User"    e.g. use $HNode1User for
  170.     the name of the user on node 1..
  171.  
  172.     the reason usernames/handles are not passes as parameters is that they MAY
  173.     have spaces in the filenames...
  174.  
  175.     also note the environment variable "HNode<nodenum>LoginType"
  176.  
  177.     see HBBS:Scripts/GlobalLogoff.script for an example!
  178.  
  179.   Docs
  180.   ====
  181.  
  182.     updated the following doc files a bit
  183.  
  184.     HBBS:Docs/Misc/GUI.guide
  185.     HBBS:Docs/Misc/Directories.guide
  186.     HBBS:HBBS.Guide
  187.  
  188.   AddDIZToList
  189.   ============
  190.  
  191.     added a parameter check and writes to callers log if it has a problem..
  192.  
  193. 02-01-1996
  194. ==========
  195.  
  196.   XPR
  197.   ===
  198.  
  199.    you can now resume files that you started to upload but either cancelled
  200.    or lost carrier..
  201.  
  202.    uploaded files are stored as <Conf-PartUpload>/<FileName>@<UserID>
  203.  
  204.    e.g.  HBBS:Conferences/Amiga/PartUpload/BANANA.LHA@1
  205.  
  206.    you must however set the xpr protocol options so that it allows
  207.    resuming of files..  (E.G. Include "OR" in the protocol options, see
  208.    the new updated HBBS:System/Protocols file...)
  209.  
  210.   FileLister
  211.   ==========
  212.  
  213.    Woooooooooooooooooooooo, well quick now...  rewrote my FGetsR() routine
  214.    to be mucho quickero.. :-)  FGetsR() just reads lines from a file starting
  215.    from the current position and working backwards instead of forwards like
  216.    the dos FGets(), hence the 'R' in the function name standing for Reverse..
  217.    I'll be putting this *COOL* function in the library soon!
  218.  
  219.    Also responds to a user handing up while browsing a filelist now..
  220.  
  221.    added an H parameter so that you can scan the "holdlist" file of the conf you
  222.    are in (Sysop's only..)  works with all modes (FR,N and F) so N -2 H is cool!
  223.  
  224.    updated ansi when flagging files.
  225.  
  226.    does not clear screen at end of file anymore.
  227.  
  228.   View
  229.   ====
  230.  
  231.    fixed bugs and added sysop mode
  232.  
  233.   Zippy
  234.   =====
  235.  
  236.    same bug as filelist with the not checking for lost carrier..
  237.    fixed. also updated ansi when flagging files
  238.  
  239.    does not clear screen at end of file anymore..
  240.  
  241. 01-01-1996
  242. ==========
  243.  
  244.   H A P P Y   N E W   Y E A R !
  245.  
  246.  
  247.   Man my neck hurts.... And I can't remember why, alcohol roolz..
  248.  
  249.   FileLister
  250.   ==========
  251.  
  252.     FR WORKS NOW!!
  253.  
  254.     But it's realllllllly slow as I just did a real quick'n'easy way
  255.     of reading the file backwards..  It'll be speedier sooon.
  256.  
  257.   XPR
  258.   ===
  259.  
  260.     now checks other node's playpen dirs for existance of the file
  261.     that a user is trying to upload (someone else might already be uploading it..)
  262.  
  263.   Pager
  264.   =====
  265.  
  266.     created door, installed as O command at the bbs prompt
  267.  
  268.     it uses 3 4 new screens that should be placed in a screens/special dir..
  269.  
  270.     Page.TXT        - displayed before the page reason prompt
  271.     Paged.TXT       - displayed when a sysop has been paged
  272.     PageNoSysop.TXT - for when the chatflag is off
  273.     PageCancel.TXT  - for when a user cancels a page
  274.  
  275.   LinesPerScreen
  276.   ==============
  277.  
  278.     created door. 100% cool and rather easy to create..
  279.     installed as LPS at the bbs prompt, or accessable from the W command
  280.  
  281.  
  282. 31-12-1995
  283. ==========
  284.  
  285.   HBBSCommon.library
  286.   ==================
  287.  
  288.     changed so that will read and keep config items with blank strings..
  289.  
  290.     e.g.
  291.  
  292.     Door_Options=
  293.  
  294.     needed this for the UserSettings door...
  295.  
  296.   Control
  297.   =======
  298.  
  299.     updated gui (again)
  300.  
  301.   Node
  302.   ====
  303.  
  304.     made it use HBBS.font on the screen title as well..
  305.  
  306.  
  307.   SelectLanguage
  308.   ==============
  309.  
  310.     updated program, much cooler now..
  311.  
  312. 30-12-1995
  313. ==========
  314.  
  315.   Done loads more on the XPR door, moves cancelled files to PartUpload etc..
  316.   and some other bits and bobs..
  317.  
  318.   Control/Node
  319.   ============
  320.  
  321.     changed all LCFiles references to PartUpload as LCFiles will not be used..
  322.  
  323.     CHANGE YOUR CONFERENCE CONFIGS!
  324.  
  325.   MoveFile
  326.   ========
  327.  
  328.     now accepts a NOUSER parameter, if specified it will not display anything
  329.     on the screen
  330.  
  331.  
  332.  
  333. 29-12-1995
  334. ==========
  335.  
  336.   anyway, I'm tired now and want to go to sleep.. to many l8 nights coding away
  337.   on this...  It can't be good for me..
  338.  
  339.   Mind you, I saw ace venture 2 today and that was quite a good film..
  340.  
  341.   XPR
  342.   ===
  343.     re-wrote most of the XPR door, it now does things much better are more structured
  344.     and doesn't guess at strings to figure out of files have been transferred ok!
  345.     :-)
  346.  
  347.     it now builds a linked list of files transferred (one for ul's and one for dl's)
  348.     and checks them at the end to find out what's what..
  349.  
  350.   MailReply
  351.   =========
  352.  
  353.     Fixed a (small) bug in this door that caused it to crash on my A3000, but not
  354.     on my 2 other computers making it a pain to track down...
  355.     turns out I was going strcpy(Msg->To,Msg->From) instead of
  356.     FreeAndSet(&Msg->To,Msg->From)...  caused memorylist corruption..
  357.  
  358.  
  359.  
  360. 28-12-1995
  361. ==========
  362.  
  363.   did sod all on HBBS today, first time for ages.. :-)
  364.  
  365. 27-12-1995
  366. ==========
  367.  
  368.   didn't do much today, tiedied a couple of bits and bobs up here and there
  369.   did a bit more on the mail and xpr doors..
  370.  
  371.   the caller and calls today on each node's "Info" window now work
  372.   100%, but I have got to make it read in the callers log so that it shows
  373.   who the last few callers were when you close and node and then restart it..
  374.  
  375.  
  376.  
  377. 26-12-1995
  378. ==========
  379.  
  380.   Had a bit of a bugfixing day today..
  381.  
  382.   UserSettings
  383.   ============
  384.  
  385.     This door is set up as "W" at the bbs prompt..
  386.  
  387.     Man, is this door cool..
  388.  
  389.     with /X you could either get the W command to bring up internal /X
  390.     settings config program, or you could make it display a menu of what
  391.     you wanted to change (i.e. AquaSettings)
  392.  
  393.     But with this COOL command you can specify what all the options
  394.     on one screen!
  395.  
  396.     Check out HBBS:Doors/User/UserSettings/UserSettings.CFG.
  397.  
  398.   Icons
  399.   =====
  400.  
  401.     updated all the .info files to cool magic WB one..
  402.  
  403.   Control
  404.   =======
  405.     fixed a few memory leaks
  406.     updated it to use some new library routines
  407.  
  408.     added a new parameter to BBSGlobal, CopyBufferSize (see docs)
  409.  
  410.   HBBSNode.library
  411.   ================
  412.  
  413.     added HBBS_AddToCallersLog(string), rather handy, it writes the date and
  414.     time automatically too..
  415.  
  416.   Node
  417.   ====
  418.  
  419.     Made it write to the callers log..
  420.     need some options to make it ignore local logins etc.. tho.
  421.  
  422.   HBBSCommon.library
  423.   ==================
  424.  
  425.     addd more routines, changed a few more, added (even) more error checking
  426.     to some routines that deal with mem [de]allocation.
  427.  
  428.   Docs
  429.   ====
  430.     updated the BBSGlobal.guide file..
  431.  
  432. 25-12-1005
  433. ==========
  434.  
  435.   Yes, I was programming HBBS on christmas day, well it was better than sitting down
  436.   stairs with the parents watching the fucking queen's speech.  It was much more fun
  437.   sitting upstairs listening to a bit of "Green Day", "Offspring", "Speedy J" and
  438.   many other cool artists!
  439.  
  440.   XPR
  441.   ===
  442.  
  443.     fuck.. actually it still doesn't work :-( Doh.. I could have sworn it was
  444.     working yesterday 100%, but no you still get timeout errors when it writes
  445.     to the disk :-(  Not fixed it yet tho..
  446.  
  447.   FileList
  448.   ========
  449.  
  450.     Man, is this door cool!  F and N work 100% pure coolness..
  451.  
  452.   Zippy Search
  453.   ============
  454.  
  455.     well, my brother wrote this rather nice door. most of the code was nicked from
  456.     my own doors tho :-) hehe
  457.  
  458.  
  459.   Tag File
  460.   ========
  461.  
  462.     Prints CR's after files that have not been found now..
  463.  
  464.  
  465.   AccountEditor
  466.   =============
  467.  
  468.     this is working better now..  It also tells the user at the other end
  469.     that the sysop is editing your account details..
  470.  
  471.     It also reloads the access levels in when you quit it..
  472.  
  473.   JoinConference
  474.   ==============
  475.  
  476.     added another system option to it, "REJOIN" and have set up a command
  477.     called RJ so you can rejoin a conference if you wish to see bulletins, etc..
  478.  
  479.     --> requested by Cruise!
  480.  
  481.   HBBSCommon.library
  482.   ==================
  483.  
  484.     added lots of routins for converting between dates and back to strings..
  485.     see the FileList door for examples!
  486.  
  487.   CheckFiles
  488.   ==========
  489.  
  490.     now checks names of uploaded files (can't start with a '.' and can't be more
  491.     than 12 chars long.. if they are it'll prompt you..
  492.  
  493. 24-12-1995
  494. ==========
  495.  
  496.   XPR
  497.   ===
  498.  
  499.     yeah, it's working, and without buffered io, (but I'll still implement this..)
  500.  
  501.     I'm using zprzmodem.library 3.0 and USRSerial.device and it works a treat!
  502.  
  503.   Node
  504.   ====
  505.  
  506.     screen/window information is now saved in <NodeLocation>/Screen.CFG rather
  507.     than HBBS:System/Data/Node<num>_Private.CFG
  508.  
  509.     that way, if you delete a node, you delete it's associated data files too
  510.  
  511. 23-12-1995
  512. ==========
  513.  
  514.   XPR
  515.   ===
  516.  
  517.     the words AAAAAAAAAAAAAAAArrrgghhhh! spring to mind when thinking about this
  518.     F**king door!
  519.  
  520.     it sends files fine, but can I get it to fucking receive files ? Can i FUCK as
  521.     like..  it all seems to boil down to the xpr_fwrite() function..
  522.  
  523.     if i make it return(Size * Count) then you don't get *any* timeouts or anything
  524.     even when the CPU's loaded!  but if I make it
  525.     return(Write(FileBuf->FH,Buffer,Size*Count)); then it just makes xpr_sread()
  526.     timeout!!
  527.  
  528.     Argh!
  529.  
  530.     So I'm going to have to nick some buffered/async disk IO routines from
  531.     somwhere...  the annoying this is that the XPRD program does not have
  532.     any buffered IO and works fine...
  533.  
  534.     Argh!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  535.  
  536.  
  537.   HBBSNode.library
  538.   ================
  539.  
  540.     fixed SerWriteStrWithTimeout()
  541.  
  542.   Node and Nodes/NodeX/Device
  543.   ===========================
  544.  
  545.     added a config option called NullModemCable, if set to true
  546.     then you can connect another computer to your computer via
  547.     a serial port and connect to hbbs from that.. :-) Coooool!
  548.     to get hbbs to connect, just press return on the other computer!
  549.  
  550.  
  551.   today I've just done sooo much to the bbs, mainly tidying stuff
  552.   and fixing things!
  553.  
  554.  
  555.  
  556. 22-12-1995
  557. ==========
  558.  
  559.   changed DOOR_GetLine(), it's not SUPERCOOLFABANDWHIZZO!
  560.  
  561.   :-)
  562.  
  563. 21-12-1995 (PM)
  564. ===============
  565.  
  566.   XPR
  567.   ===
  568.  
  569.   added GUI and window, updates fine..
  570.   still have to make it refresh when you un-zoom the window!
  571.  
  572.   Node
  573.   ====
  574.  
  575.   Updated GUI, added more buttons on the NodeSettings window
  576.  
  577.   implemented N_ND->DoorContinue.
  578.  
  579.   HBBSNode.library
  580.   ================
  581.  
  582.     implemented DOOR_Continue() (causes further doors not to run if a door sets this
  583.     to false)
  584.  
  585.   AskDLFiles
  586.   ==========
  587.  
  588.   made it use DOOR_Continue
  589.  
  590.   Download
  591.   ========
  592.  
  593.   made it aware of AskDLFiles's DOOR_Return() setting
  594.  
  595.   Control
  596.   =======
  597.  
  598.   added EditorCMD to BBSGlobal Config.
  599.  
  600.   updated GUI
  601.  
  602.  
  603. 20-12-1995 (PM)
  604. ===============
  605.  
  606.  
  607.   XPR
  608.   ===
  609.  
  610.     tiedied somemore.  in testing this has hung a few times, more testing required
  611.  
  612.   Node
  613.   ====
  614.  
  615.     changed a screen commands, (Ratio is now BRatio) and added FRatio
  616.     for Bytes Ratio and Files Ratio respectively
  617.  
  618.     added a COOL function for creating cool menu prompts..
  619.     MenuPrompt()
  620.  
  621.     fixed a rather silly bug in DisplayScreen()
  622.  
  623.       it wasn't unlocking files if there were 0 bytes..  i was trying to unlock
  624.       and filehandle rather than a filelock (confused vars FL with FH) :-)
  625.  
  626.   HBBSNode.library
  627.   ================
  628.  
  629.     added the function DOOR_MenuPrompt()
  630.  
  631.       pass it a string with the first letter of your options
  632.       enclosed in square brackets ( []'s ) and hbbs will auto convert
  633.       the string to cool colours and print it out for you!
  634.       you can also pass it a default char so that it causes one option
  635.       to be printed in bold.
  636.  
  637.       e.g.
  638.  
  639.       DOOR_MenuPrompt("More [Y]es, [N]o :",'Y');
  640.  
  641.       currently everything is printed out in white except the brackets which are
  642.       printed in yellow, the Y in the example above would be printed in BOLD text
  643.  
  644.       this is a cool function for providing a standard menu prompting scheme that
  645.       can be used through out the bbs.
  646.  
  647.       I'll be adding parameters so you can change the colours, don't worry :-)
  648.  
  649.   Mail_Write
  650.   ==========
  651.  
  652.   added a stack of options that you can select when you are creating a message
  653.  
  654.   also updated the messagebase stuff so that you can set an access level for
  655.   a message.  started creating a config structure for the mail doors to use.
  656.   (this way the users can have thier own configuration for all the mail doors
  657.   to use, it'll be stored as HBBS:mail/users/<id>/mail.cfg.
  658.  
  659.   Mail_Scan
  660.   =========
  661.  
  662.     updated to use the access level and door_menuprompt.
  663.  
  664.  
  665. 19-12-1995 (PM) - 20-12-1995 (AM)
  666. =================================
  667.  
  668.   XPR
  669.   ===
  670.  
  671.   **Loads** more work done, it's all set-up and running withing the bbs environment
  672.   now.  It's interesting to note that term 4.5 comes with xprzmodem.library
  673.   version 2.58, I had 3.0 and the latest is 3.51.  3.51 causes term and ncomm
  674.   to software fail when transferring between each other and the nullmodem.device
  675.   2.58 just sits there and timesout. and 3.0 works fine.. :-)  ut I've got no docs
  676.   for that version :-(
  677.  
  678.   I tried my xpr implementation with a some other xpr libaries, it only worked with
  679.   znodem and zedzap libs so far..  I have to do more tests.  the otherlibs
  680.   may require some of the xpr 2.0 extensions, I've only implemented 1.0 so far..
  681.  
  682.  
  683.   Transfer
  684.   ========
  685.  
  686.   Updated to cope with the XPR door
  687.  
  688.   SelectProtocol
  689.   ==============
  690.  
  691.   defaults to protocol 1 instead of waiting for user input if they type in some shite
  692.   the first time they are asked
  693.  
  694.   Mail_Scan
  695.   =========
  696.  
  697.   more stuff done
  698.  
  699.   HBBSNode.library
  700.   ================
  701.  
  702.   added two more routines,  FindConf() (returns a confdata structure of the users
  703.   current conf, or if they are not in a conf yet it'll return a confdata structure
  704.   of the last conference they were in...
  705.   ValidConfNum() returns true if you pass it a valid conference number (index starts at 1)
  706.  
  707.  
  708.  
  709.  
  710.  
  711. 18-12-1995
  712. ==========
  713.  
  714.   YESSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS!
  715.  
  716.   Finally
  717.  
  718.   At Last!
  719.  
  720.   Whay!!
  721.  
  722.   (if you couldn't tell, I'm Excited!)
  723.  
  724.   XPR
  725.   ===
  726.  
  727.     Implemented!
  728.  
  729.  
  730. 17-12-1995
  731. ==========
  732.  
  733.   Fuck!  It's amazing how much work I've done over the last few days! :-)
  734.  
  735.   HBBSCommon.library
  736.   ==================
  737.  
  738.     fixed a COOL bug in the AssignOK() routine
  739.     in that say you had a HD with a volume name of "A3000_DH0:", it's device name
  740.     being "DH0:" and you set a (say) upload path to somewhere on DH0:
  741.     AssignOK() would incorrectly return FALSE!   Oops!
  742.  
  743.  
  744.   CLIProtocol
  745.   ===========
  746.  
  747.     correctly returns errorlevel of door in N_ND->DoorReturn
  748.  
  749.   Transfer
  750.   ========
  751.  
  752.     deducts creds for files for that are downloaded successfully
  753.  
  754.   Node
  755.   ====
  756.  
  757.     Loads moe stuff changed, fixed and updated
  758.  
  759.   Control
  760.   =======
  761.  
  762.     ditto
  763.  
  764.   Mail_Scan
  765.   =========
  766.  
  767.     even more work done,  this door is all but finished, implemented
  768.     the mailscan lastread pointers (saved in HBBS:Mail/Users/<UserID>/MailScan.CFG)
  769.  
  770.     now supports a 'M' for mark as read, so you don't have to sit through
  771.     millions of useless old mail the sysops seem to leave around
  772.     (not that they will with HBBS, because messages can be set to expire! :-)
  773.  
  774.  
  775.   Mail_Read
  776.   =========
  777.  
  778.     supports reading a list of mail messages, the list is created with
  779.     CreateMsgList() and then saved using SaveMsgList()
  780.     Mail_Read then read this list back in again and will let you read all
  781.     the messages in the list.
  782.  
  783.     this is a really amazing feature, because you can then write another door
  784.     to search the mail database for keywords, and build up a list of messages that
  785.     you can then pass to Mail_Read which then let you read them!
  786.  
  787.     COOOOL or what ?
  788.  
  789.   Mail_Write
  790.   ==========
  791.  
  792.     more work done, still needs a bit doing to it (you can't attach files yet!)
  793.  
  794.   CheckTags
  795.   =========
  796.  
  797.     changed to cope with the new updated Tag_File door (below)
  798.     also changed the ansi and it looks much nicer now!
  799.  
  800.   Tag_File
  801.   ========
  802.  
  803.     actually checks for the existance of files now... :-)
  804.  
  805.   AskDLFiles
  806.   ==========
  807.  
  808.     door (re)created fromm scratch, it works fine, needs more work
  809.     doing to it,  it's just functional now.. :-)
  810.  
  811.     (mind you, it looks pretty tho :-)
  812.  
  813.  
  814. 16-12-1995
  815. ==========
  816.  
  817.   Node
  818.   ====
  819.  
  820.     Added CLS,PAUSE,ECHO and DOS as door types! :-)
  821.  
  822.     (for CLS to work, the _door option must also be set to CLS)
  823.  
  824.  
  825.   Mail_Scan
  826.   =========
  827.  
  828.     Scans for ALL and EVERYBODY messages too
  829.  
  830.   Mail_Reply
  831.   ==========
  832.  
  833.     created door, works ok!
  834.  
  835.   Editor
  836.   ======
  837.  
  838.     now appends to existing files is the LOAD parameter is specified
  839.  
  840.   FrontEnd
  841.   ========
  842.  
  843.     won't allow users access who's accounts have been disabled
  844.     (status of 'L', for login's denied)
  845.  
  846. 15-12-1995
  847. ==========
  848.  
  849.   FrontEnd
  850.   ========
  851.  
  852.     Automatically logs in the a new user if the newuser door created an
  853.     new account ok.
  854.  
  855.   NewUser
  856.   =======
  857.  
  858.     Revamped slightly.
  859.  
  860.   Mail_Read
  861.   =========
  862.  
  863.     added a continue prompt on long messages
  864.  
  865.     can delete mail now
  866.  
  867.   HBBSNode.library
  868.   ================
  869.  
  870.     Added a DOOR_ContinuePrompt() routine
  871.  
  872.  
  873.  
  874.  
  875. 14-12-1995 (PM)
  876. ===============
  877.  
  878.   MailRead
  879.   ========
  880.  
  881.     Very quick version done.  Cannot be called from the R command yet,
  882.     only the mail scanner can use it so far..
  883.  
  884. 13-12-1995 (PM) - 14-12-1995 (AM)
  885. =================================
  886.  
  887.   Today has been a bit of a tidy-up day with lots of little (but important) things
  888.   being done.
  889.  
  890.  
  891.   Access Commands have been implemented (but only 10 access settings are loaded,
  892.   of which only one is used (see the Status door and access command "AllowStatus")
  893.  
  894.   Check out HBBS:Access/#?, <node>/Access/#?, <conf>/Access/#?.
  895.  
  896.   access data is updated when you a) login and b) change conference.
  897.  
  898.   This is actually a major thing beleive it or not...  I'm surprised I've only just
  899.   had to code it now...
  900.  
  901.  
  902.   Also added a few new routines to both the libs (HBBSCommon and HBBSNode)
  903.  
  904.   hbbs also sets an env: variable called HNode<nodenum>User to the name of the person
  905.   who's currently logged in.  if no-one is logged in the variable will not be present
  906.  
  907.   the cool logoff screen is created using scripts and cli programs, see
  908.   HBBS:Screens/Special/Logoff.txt
  909.   HBBS:System/Amiga/CLI/ByeScript
  910.   HBBS:System/Amiga/CLI/Figlet/#? (figlet just converts ascii text to large
  911.                                    fonts made of ascii letters)
  912.  
  913.   Isn't hbbs wonderfull ?? :-)
  914.  
  915.   Node
  916.   ====
  917.  
  918.   F6 and SHIFT+F6 work now!
  919.  
  920.   AccountEdit
  921.   ===========
  922.  
  923.     Right then,  I've created this (smallish) and very unfinished door
  924.     so that you can modify accounts by pressing F6 when a user is logged in.
  925.  
  926.     you can also run this from the command prompt, I've set it up so only users
  927.     with an access level of 255 can do this.  to run it just type "Accounts"
  928.     at the prompt
  929.  
  930.  
  931.  
  932. 12-12-1995 (PM) - 13-12-1995 (AM)
  933. =================================
  934.  
  935.   DAMN I'M COOL....
  936.  
  937.   Mailscan
  938.   ========
  939.  
  940.     Works a treat, implemented the little promptso you can call the "mailread"
  941.     door now.  it seems to be working 100%, even has nice special ANSI effects!
  942.  
  943.   MailWrite
  944.   =========
  945.  
  946.     Whay hey hey!  Now we're cooking!  This door has come along in leaps and
  947.     bounds this evening..  It now writes mail to people!  Hehe,  it even handles
  948.     multiple user mails (e,g, messages with more than one recipient)
  949.  
  950.     currently it does not do anything with internet/fideonet messages
  951.  
  952.     it does not let you select any flags, or attach files orlots of things actually,
  953.     but hey, it works..
  954.  
  955.     And I love it when doors compile and run first time after you spend 4 hours
  956.     coding it.. :-)
  957.  
  958.  
  959.     oh, and you can wipe-out all the files in a mail dir and hbbs won't complain,
  960.     it'll just re-init everything for you automatically..
  961.  
  962.  
  963.   Editor
  964.   ======
  965.  
  966.     it had to happen sooner or later...  A line editor! Yippie!
  967.  
  968.  
  969.     Well, this is in a very early stage at the moment, it took me all of about
  970.     2 mins to write this one...
  971.  
  972.     it's also more of a "creator" that "editor" at the moment too :-)
  973.  
  974.   p.s.  did you noticate that I've not started the "readMail" door yet :-)
  975.  
  976. 7-12-1995
  977. =========
  978.  
  979.   Bollox... Life still sucks, aquafresh is sitting here next to me playing
  980.   Sega Rally on my saturn, and he's quite shit at it :-) hehe..
  981.  
  982.   Anyway, erm..
  983.  
  984.   MailScan
  985.   ========
  986.  
  987.     Done more work, it's coming along quite nicely (still)
  988.  
  989.  
  990.  
  991. 6-12-1995
  992. =========
  993.  
  994.   Well, life's still fucked today.  The new fucking stereo for the car's
  995.   gonna cost 300 quid, i need a new fucking head gasket for the engine, at
  996.   another 300 quid.  Then I need to replace a camera at 35 quid, and a
  997.   personal stereo at 50 quid, followed by a new thermostat for the car at
  998.   20 quid followed by a new stereo surround for the car at 40 quid and 100
  999.   fucking quid for a new window in the car.
  1000.  
  1001.   FUCK
  1002.  
  1003.   Anyway...
  1004.  
  1005.  
  1006. 5-12-1995 - The (Extremely) Bad Day
  1007. ===================================
  1008.  
  1009.         ------------------------------------------------------
  1010.         Warning - This Section May Cause Viewers Some Distress
  1011.         ------------------------------------------------------
  1012.  
  1013.   Fuck Fuck Fuck Fuck Fuck Fuck Fuck, how bad can my life fucking get..
  1014.   My car was broken into tonight, and I've just had the window broken,
  1015.   £300 quids worth of car CD player, 2 cameras and my personal stereo
  1016.   all fucking nicked.  If I catch the bastard who did it I'm gonna rip
  1017.   his fucking head off, shove a 20000 volt mains cable up his ass and drop
  1018.   a bloody piano on has bollox.
  1019.  
  1020.   Today started badly when I noticed that a collar button had fallen
  1021.   off my shirt.  Checked the mail, "Argh!"  A letter from the bank saying
  1022.   "Please pay in 762 pounds into your account within the next 10 days",
  1023.   "Great" I thought. When I got to work ten mins late, all the fucking
  1024.   users rang me up saying "I can't get into vista" because the supposed
  1025.   "patch" from DEC had made the VT320 emulator even WORSE, then I couldn't
  1026.   send a fucking fax from the fax machine as it would not do 40 page faxes,
  1027.   the paper just jammed.  So I tried using windows 95 on my pc to send a
  1028.   fax via my 28.8k courier and all it says is "Fax Transmission Inturupted",
  1029.   Great Fucking Help that is.  So we try another PC, it then comes up
  1030.   saying "Intermittent memory error" and fucks itself.  So that pissed me
  1031.   off,  then we got a new printer in and we couldn't plug that into the
  1032.   fucking machine it was supposed to plug into as it came with a parallel
  1033.   interface rather than a serial interface.  Then the pathworks license
  1034.   allocator would not fucking work so all these PC's could not map
  1035.   thier "E:" drive to the (crap) VAX.  So I had to spend 3 bloody hours
  1036.   fixing that.   Then I came to set up my own spare PC and would the hard
  1037.   disk parition itself ?  Would it fuck as like..  So, i then got another
  1038.   HD slapped that in all fine, copied about 200MB of warez 2 it.  By that
  1039.   time it was about 7:30pm so i thought "I'm off now.."  Went to my car,
  1040.   noticed the light in the glove box was on and I thought to myself "I'm
  1041.   sure I shut that when I came back from lunch", Went to open the door of
  1042.   the car and noticed the window had been smashed and my fucking new car
  1043.   cd player had ben nicked!  Not only did they nick my car CD player, but
  1044.   they nicked my new "Alannis Morissette" CD I bought YESTERDAY!  That was
  1045.   still in the cd player from lunchtime  it.  Argh!  Now it's started
  1046.   snowing (had to snow the day my car has no fucking glass in the window
  1047.   of course, couldn't snow the next week could it, no, even the fucking
  1048.   weather has it in for me today), So it's fucking freezing and I've got
  1049.   to drive 8 miles home with no window, so I sat in my car freezing my nuts
  1050.   off all the way home.  After I get home, I turn my Pentium PC on to copy
  1051.   all the warez from my spare PC, and after a moment i notice that it's
  1052.   making a rather loud sound.  Fuck, the cables have just hit the fan that
  1053.   sits ontop of the pentium chip.  Fuck you INTEL,  why did you have to
  1054.   design such a shite processor!  Then I checked out my "Home Contents"
  1055.   insurance to check wether my car stereo comes under it, and NO, course
  1056.   it fucking doesn't.  FUCK.  Damn this stupid fucking country.  I couldn't
  1057.   afford "Fully Comprehensive" insurance earlier in the year because no
  1058.   insurance companies would do it as I'm 21, have a BMW 316 and haven't got
  1059.   any "No-Claims" bonus.  The fucking insurance cost nearly as much as the
  1060.   car did.  After all, the car was made in 1983 and I bought it for 750
  1061.   quid but the insurance still costs 500, third party only (not even fire
  1062.   and theft..)  CUNTS, I HATE LIFE IT SUCKS,  WHY DO WE HAVE TO WORK FOR A
  1063.   LIVING, I JUST WANT TO SIT AT HOME PLAYING SATURN/PSX/NEO-GEO/3DO GAMES
  1064.   AND CODE ON MY AMIGA WITH A BOTTLE OF MALIBU SITTING NEXT TO ME, WITH AN
  1065.   ENDLESS SUPPLY OF PC'S I CAN KICK THE SHIT OUT OFF FOR BEING SO DAMN CRAP.
  1066.   FUCKING COUNTRY, FREEDOM, BOLLOX I SAY.
  1067.  
  1068.   Oh, and I've not done a fucking thing on HBBS today either.
  1069.  
  1070.  
  1071. 3-12-1995
  1072. =========
  1073.  
  1074.   Created the "Download" door
  1075.  
  1076.   modified transfer door to (temorarily) handle downloads
  1077.  
  1078.   Common/Structures.C
  1079.   -------------------
  1080.     modified Struct TaggedFile
  1081.     (removed ExplicitPath and added WarezFile)
  1082.  
  1083.   done more work on the mail scanner
  1084.  
  1085.   CliProtocol
  1086.   ===========
  1087.  
  1088.     Removed banner
  1089.  
  1090.   Control
  1091.   =======
  1092.  
  1093.     fixed bug in loading data from "HBBS:System/Protocols" file it was looking for
  1094.     "UNIDIRECTION" or "BIDIRECTION" but the data file had "UNIDIRECTIONAL" and
  1095.     "BIDIRECTIONAL"... (note the "AL" on the end!! whoops!)
  1096.  
  1097. 2-12-1995
  1098. =========
  1099.  
  1100.   done more work on the mail scanner
  1101.  
  1102. 1-12-1995
  1103. =========
  1104.  
  1105.  
  1106.   Oh shit, Time's running out,  it's that festive season again..
  1107.  
  1108.   Node
  1109.   ====
  1110.  
  1111.     Fixed bug with SetWatchTitles() that would still try and set the window
  1112.     and screen titles of the watch window even if it was closed.. (caused system
  1113.     crash)
  1114.  
  1115.     N_ND->ActiveDoor->SystemOptions is always allocated, this would have been
  1116.     a null pointer if an <door>_param_xx=<blah> was not specified, which
  1117.     caused problems for doors that do not check for a null pointer..
  1118.     It also makes the door coder's life easier (but not mine) as it's one
  1119.     less thing they have to worry about.
  1120.  
  1121.   Done loads more on the mailscan door this evening too..
  1122.  
  1123. 29-11-1995
  1124. ==========
  1125.  
  1126. Yeah! Another 2 months at macmillan.. Coooool. Loadsamoney..  No Erm, back to
  1127. life and hbbs and that kind of thing..
  1128.  
  1129.   !NewDoor/Main.C
  1130.   ===============
  1131.  
  1132.     set default stack size to 16k, this is because if you call many routines in
  1133.     the shared library (hbbscommon.library) you might run out of stack space
  1134.     causing spurious errors at random places due to memory corruption.
  1135.  
  1136.   All_Levels (access file)
  1137.   ========================
  1138.  
  1139.     Setup "C" and "EMAIL" doors to use the "write_mail" door (see below..)
  1140.     note the use of _Param_1=<blah>
  1141.  
  1142.   Mail  (note: as of today none of this works, I'm just laying the groundwork for it..)
  1143.   ====
  1144.  
  1145.     Created all the dirs for the mail sub-system.
  1146.  
  1147.     HBBS:Mail/Public
  1148.     HBBS:Mail/Users
  1149.     HBBS:Mail/Sysop
  1150.     HBBS:Mail/Groups
  1151.     HBBS:Mail/Groups/LSD         (for use with example setup, see BBSGroups in BBSGlobal)
  1152.  
  1153.     HBBS:Conferences/<confname>/Mail
  1154.  
  1155.     from the above you can see that there are a few places for mail to reside.
  1156.  
  1157.     each user will have a *private* mailbox, they have a directory in HBBS:Mail/Users
  1158.     the dir name is the same as the users ID (not handle)  e.g.  HBBS:Mail/Users/1
  1159.  
  1160.     the sysop has his own private mailbox (as well as a user mailbox) in which
  1161.     stuff like sysop comments are placed
  1162.  
  1163.     there is a public dir, any mail in here is scanned by all users everytime they
  1164.     login, this is where system ealls go
  1165.  
  1166.     each conference has it's own mail dir, this is where conference related mail goes
  1167.     it can be addressed to individual users or ealls, e.g. this is where you'd tell all
  1168.     your amiga users to download a new amiga release, rather than creating an eall
  1169.     in the public mailbox
  1170.  
  1171.     then you have group mail, a user can address a mail message to a particular group
  1172.  
  1173.     group mail works on a sort of bulletin board principle, a tag for each user having
  1174.     read a message is saved so they dont read it again.
  1175.  
  1176.     mail will have expiry dates! (yeah, ok, all you sysops fed up of asking users to
  1177.     delete thier mail can line up in a queue and thank me one at a time!)
  1178.  
  1179.   Write_Mail
  1180.   ==========
  1181.  
  1182.     Started writing this door now,  just creating some routines that will be
  1183.     put into hbbscommon.c at the moment,
  1184.  
  1185.     like things for checking a list of user handles passed to a function via a
  1186.     string, it then checks the usernames are valid, and passes them, as well as
  1187.     the id numbers, back to the user as well as a return value. (true, false)
  1188.  
  1189.     See HBBS:Source/User_Doors/Mail/Mail_Common.c for some interesting info
  1190.     on how mail messages are made..
  1191.  
  1192.  
  1193.  
  1194.  
  1195. 28-11-1995 (AM)
  1196. ===============
  1197.  
  1198.   Just got back from watching the new james bond film "Golden Eye", if you've not
  1199.   sen it yet then do so now!  It's cool... Total Blast Fest!
  1200.  
  1201.   Why do I do this ?  It's 01:36 am and I'm sitting here coding...  !?!
  1202.  
  1203.   Still, Sega Rally on my saturn is COOL, got it on saturday so spend most of
  1204.   saturday evening with 4 m8s playing it on it's split screen mode.  Gfx wise it's
  1205.   just as good (if not better) than ridge racer on my ps-x...
  1206.  
  1207.   Control
  1208.   =======
  1209.  
  1210.     Checking some enforcer hits caused by a missing conference directory.
  1211.     It turned out it was caused by the routine HBBS_DoErrorMessage() in
  1212.     HBBSCommon.library when it was passed a null pointer for the errormessage
  1213.  
  1214.   HBBSCommon.C
  1215.   ============
  1216.  
  1217.     Fixed enfocer hit in HBBS_DoErrorMessage()
  1218.  
  1219.   Node
  1220.   ====
  1221.  
  1222.     Calls "CheckUser" system door to check that the users account is ok.
  1223.  
  1224.     the users setting for language is not used.  .TXT is NOT automatically appended
  1225.     to a screen name.  If a user is not vaid (i.e. not logged in) then the first
  1226.     language defined in BBSGlobal will be used.
  1227.  
  1228.     See HBBS:BBSGlobal, LanguageExtn and LanguageName.  SelectLanguage Door,
  1229.     New User Door, CheckUser Door and Node_Input.c - DisplaySpecialScreen().
  1230.  
  1231.  
  1232.   CheckUser
  1233.   =========
  1234.  
  1235.     Door Created
  1236.  
  1237.     Checks all the users userdata is current and valid.  Can be used to
  1238.     check for stuff like sentbys.
  1239.  
  1240.     Currently only checks selected language and conference are valid.
  1241.  
  1242.   SelectLanguage
  1243.   ==============
  1244.  
  1245.     Displays a list of languages availiable to the user and lets them pick one
  1246.  
  1247.  
  1248. 23-11-1995 (PM) and 24-11-1995 (AM) Alpha Release 03
  1249. ====================================================
  1250.  
  1251.   Argh, It's 1:54 am and I need sleep...  I'm just about to lha this up now
  1252.   then I'm off to bed...  L8rz...
  1253.  
  1254.   Ok, the main things that have been done between this alpha version and
  1255.   the last one is the handleing of uploads.  File ID's are now extracted and
  1256.   added to file lists..
  1257.  
  1258.   (p.s.  I've not included ZIP,UNZIP, LHA, TXTExtract, DMSDescript, GIFDesc
  1259.   or any other util used for handling archives or file ID's as you should
  1260.   already have these, I will however release them with the full version of HBBS)
  1261.  
  1262.   Oh, and I noticed that HBBS has been spread around many BBS's,  i don't want
  1263.   HBBS being spread in it's current form (i.e. unfinished),  I'm only releasing it
  1264.   like this to other possible sysop's and door coders..  It *may* be spread
  1265.   to all coders/sysop conferences however..  But not to general Amiga Warez
  1266.   conference... And woe-betide anyone who uploads it to Aminet!!
  1267.  
  1268.  
  1269.   Just so you know..  I've put some small files in HBBS:Nodes/Node3/PlayPen/T for
  1270.   you to test the uploads with.  copy them into the nodes playpen when HBBS tells
  1271.   you to copy files to the playpen
  1272.  
  1273.   Have fun now....
  1274.  
  1275.   Node
  1276.   ----
  1277.  
  1278.     Now Supports 2 new door types. these are:
  1279.  
  1280.     SCREEN  : just displays a text screen (pass the full file name as to _Door option)
  1281.     SSCREEN : displays a Special Screen (pass just the screen name with a path and
  1282.               without an extension as the _Door option..
  1283.  
  1284.  
  1285.     E.G. 1
  1286.  
  1287.     QS_Type_1=SSCREEN
  1288.     QS_Door_1=QuickStats
  1289.  
  1290.     typing QWS at the bbs prompt will force hbbs to look in the conference's
  1291.     screens/special dir for a file called "QuickStats.<LanguageExtn>"
  1292.     (e.g. QuickStats.TXT), if it's not there it'll look in the node's
  1293.     screens/special dir followed by hbbs:screens/special..
  1294.  
  1295.     E.G. 2
  1296.  
  1297.     QS_Type_1=SCREEN
  1298.     QS_Door_1=HBBS:Screens/Misc/QuickStats.TXT
  1299.  
  1300.     typing qs at the bbs prompt will force hbbs to display the file above..
  1301.  
  1302.   HBBSCommon.library
  1303.   ------------------
  1304.  
  1305.     HBBS_LoadConfig() does NOT call HBBS_LogError() when it can't open a config
  1306.     file anymore..  If you have optional config files then you get rather large
  1307.     ErrorLog files.   I might make it off-onable tho.. Let me know if you want it ?                  *I*
  1308.  
  1309.   AddCreds
  1310.   --------
  1311.  
  1312.     Door Created!  You should notice the stats going up a bit for uploaded files..
  1313.  
  1314.     Also...., Get this:  I've built in a little auto-award part to this
  1315.     door, check out the file HBBS:Doors/System/AddCreds/AddCreds.CFG
  1316.  
  1317.     basically you can get AddCreds to automatically add extra (or even remove)
  1318.     credits for a particular file or files.  As Always, Amiga Wildcards are supported
  1319.     so you can have:
  1320.  
  1321.      AwardFile_1=LSD#?
  1322.      AwardOpts_1=*3
  1323.  
  1324.     or
  1325.  
  1326.      AwardFile_2=PGS-ZD.LHA
  1327.      AwardFile_2=+2000000
  1328.  
  1329.     You get the jist... (it supports +,*,- and / options )
  1330.  
  1331.     Cool, isn't it ??
  1332.  
  1333.   MoveFile
  1334.   --------
  1335.  
  1336.     Created Door
  1337.  
  1338.     it basically moves a file from the playpen to a HOLD, BAD or UPLOAD dir.
  1339.  
  1340.     I wrote this at about 1:20am and I need some sleep now so I've not had change to
  1341.     test it much, although it appears to be working ok..  If it give you greif then
  1342.     remove the door from the "System" door list..
  1343.  
  1344.     It does however check for validated disks, free disk space and valid assigns,
  1345.     something that /X NEVER DID!! :-)  But hey, that's a suprise right! NOT!!!!
  1346.  
  1347.     If it cannot move a file then it'll attempt to put it in HBBS:LostFiles and
  1348.     will tell you so (also logs this in HBBS:ErrorLog)
  1349.  
  1350.  
  1351. 22-11-1995 (PM) and 23-11-1995 (AM)
  1352. ===================================
  1353.  
  1354.   CheckTags
  1355.   ---------
  1356.  
  1357.     Nothing changed, just a reminder that you can use all wildcards here..
  1358.  
  1359.     so #?.l??, *.ZIP or even ~(#?.LHA|#?.LZH)
  1360.  
  1361.     (the last example would clear all tags that did not end in .LHA or .LZH
  1362.     just if you didn't know what the ~, | or () things did.. :-)
  1363.  
  1364.     Amiga wildcards rule...
  1365.  
  1366.  
  1367.   Node & HBBSNode.library
  1368.   -----------------------
  1369.  
  1370.     The MaxLen option of HBBS_AdvancedGetLine() works ok now.. (yeah!!!)
  1371.     for an example, upload a file with no File_ID.DIZ, the ModifyDIZ door
  1372.     uses this function..
  1373.  
  1374.   File ID related doors
  1375.   ---------------------
  1376.  
  1377.     Updated bits and bobs here and there...
  1378.     looking much more like it now..
  1379.  
  1380.   System/FileID
  1381.   -------------
  1382.  
  1383.     There's now an option called Add_RenameDIZ_n=TRUE|FALSE option
  1384.     for each file type..
  1385.  
  1386.     I was thinking of making the lines in the file be the format
  1387.  
  1388.     n_OptionName=blah
  1389.  
  1390.     rather than
  1391.  
  1392.     OptionName_n=blah
  1393.  
  1394.     what do you think...
  1395.  
  1396.  
  1397. 20-11-1995 (PM) and 21-11-1995 (AM) :-)
  1398. =======================================
  1399.  
  1400.   HBBSCommon.C
  1401.   ------------
  1402.  
  1403.     Added HBBS_SaveFile(), it saves the ln_name items of a linked list to
  1404.     a text file.  Needs more error checking added to it.  For an example
  1405.     see "hbbs:source/doors_system/checkfiles/Main.c"
  1406.  
  1407.   FileList
  1408.   --------
  1409.  
  1410.     Changed output of ansi a bit
  1411.  
  1412.     recognises the P id.
  1413.  
  1414.   ExtractDIZ
  1415.   ----------
  1416.  
  1417.     Created work/<filename>.ADD as well as work/<filename>.DIZ now.
  1418.     the former is the file that gets stored in the archive as the file_id
  1419.     the latter is what is added to the file lists..
  1420.  
  1421.     (it ADDS file_id's as well as extracts them now..)
  1422.  
  1423.   AddDIZToList
  1424.   ------------
  1425.  
  1426.     This now works fine..
  1427.  
  1428.     I'll have to make it read the following files before it adds a diz..
  1429.  
  1430.     work/<filename>.DIZ
  1431.     work/<filename>.MISC
  1432.  
  1433.     stuff like sysop comments, sent by etc are stored in the .MISC file in the format
  1434.     of the file list.
  1435.  
  1436.  
  1437. 19-11-1995
  1438. ==========
  1439.  
  1440.   Just a reminder, if you want to test the upload door using something like Zmodem
  1441.   from your terminal program, then load it up, make sure you are using Node 3,
  1442.   set your terminal programs serial device to NullModem.device (instead of
  1443.   serial.device) and set the unit number to 7.  Then make sure node 3 is running the
  1444.   await connect door.  If so then just type ATD in your terminal program, press return
  1445.   and after a few seconds it should connect to the BBS! Whay..  Then log in as normal
  1446.   and just type out the "U" door...
  1447.  
  1448.   Distribution archives are now called HBBS-A??.L?? the first .LHA file is renames
  1449.   to .LHA to stop /X systems skipping it due to the archive being a multivolume
  1450.   archive.
  1451.  
  1452.   Common/Stuctures.c
  1453.   ------------------
  1454.  
  1455.     Added Various items to various structures, you *MUST* re-compile *all* of your
  1456.     programs that #include this file.
  1457.  
  1458.  
  1459.   Node
  1460.   ----
  1461.  
  1462.     When waiting for a call, Pressing F8 to switch between window/screen now
  1463.     causes the "await" (await connect) door to re-display the await.txt screen
  1464.  
  1465.     Added a MaxDIZLines to the node settings. (N_ND->NodeSettings.MaxDIZLines)
  1466.     N_ND->MaxDIZLines defaults to the above setting when the node is reset.
  1467.  
  1468.   JoinConference
  1469.   --------------
  1470.  
  1471.     Modified so that it copies N_ND->CurrentConf->MaxDIZLines to N_ND->MaxDIZLines
  1472.     when you join a new conference.
  1473.  
  1474.     Skips conferences that a user doesnot have access to when they use > or <
  1475.     at the prompt
  1476.  
  1477.     If they are a NEW user then the conferences that they do not have access to will
  1478.     notappear in the list
  1479.  
  1480.     If they are NOT a new user but don't have access to a particulat conference then
  1481.     that conference will show up in RED.
  1482.  
  1483.   CheckFiles
  1484.   ----------
  1485.  
  1486.     removed checking of sysop file and loading diz.
  1487.  
  1488.     moved LoadDIZ to a more generically usefull function called
  1489.     HBBS_LoadFile() and placed it in HBBSCommon.c
  1490.  
  1491.     changed references from Ask_UL to Conform_UL
  1492.  
  1493.   HBBSCommon.c
  1494.   ------------
  1495.  
  1496.     Added HBBS_LoadFile(),  loads a file into a linked list, one line of text
  1497.     for each node in the list.  free output with FreeStrList() get items with
  1498.     HBBS_ListName() etc..  Rather handy i thought...
  1499.  
  1500.   AskUl
  1501.   -----
  1502.  
  1503.     Renamed to ConfirmUL to avoid confusion between AskUL and AskULFiles (yet to be
  1504.     created)
  1505.  
  1506.  
  1507.  
  1508. 14-11-1995
  1509. ==========
  1510.  
  1511.   Released alpha version 02 onto digital candy this morning.
  1512.  
  1513.  
  1514.   FileList
  1515.   --------
  1516.  
  1517.     Sucessfully calls the "A" door to tag files
  1518.  
  1519. 12-11-1995 Alpha Release 02
  1520. ===========================
  1521.  
  1522.   Heheh, well, I didn't get my arcade machine yet, still waiting for it to arrive,
  1523.   but I did get a sega saturn last weekend, so most of this week has been spent
  1524.   playing on that and watching various films like Under Seige 2, Clueless and
  1525.   Apollo 13....  Sorry people!
  1526.  
  1527.   Oh well, atleast I got loads of work done on it this evening... it's 10:00pm now
  1528.   and I started at 5:00pm so I think I've been productive today..
  1529.  
  1530.   Tomorrow is cinema day (cheap day!) so I doubt I'll get much done then..
  1531.  
  1532.   The distribution of this (alpha) version if done by multi-volume LHA archives
  1533.   now, each file will be called HBBS-A<release>.L?? e.g.
  1534.  
  1535.   HBBS-A01.LHA
  1536.   HBBS-A01.L01
  1537.   HBBS-A01.L02
  1538.  
  1539.  
  1540.   Door coders should set their program's stack to 16384 (or thereabouts) if they
  1541.   are going to spawn other programs themselves (using HBBS_RunDOSCMD())
  1542.   to do this use LONG __stack=16384; somewhere just after your includes..
  1543.  
  1544.   AskUL
  1545.   -----
  1546.  
  1547.     Door Created, all working OK..
  1548.  
  1549.   Await Connect (Door)
  1550.   --------------------
  1551.  
  1552.     if Await.TXT if found in a screens dir then it does not display the list
  1553.     of function keys to you. (i.e. you're supposed to have them in the .txt
  1554.     file)   Created a nice little Await.TXT and stored it in HBBS/Screens/..
  1555.     Special/Ansi/Await.TXT
  1556.  
  1557.   Common/Strings.c
  1558.   ----------------
  1559.  
  1560.     added str_CSI_SF1-10 for shifted function keys
  1561.  
  1562.   System/FileID (Config File)
  1563.   ---------------------------
  1564.  
  1565.     changed @?@ codes to {?} codes (like the menu prompts use..)
  1566.     don't forget to use options like lha's -m for other diz extractors..
  1567.  
  1568.   ExtractDIZ (Door)
  1569.   -----------------
  1570.  
  1571.     Actually extracts the file id's now...
  1572.  
  1573.     *** Door not finished, until futher notice you must specify all options
  1574.     in the System/FileID file for each type of file to prevent errors
  1575.  
  1576.   Node
  1577.   ----
  1578.  
  1579.     You now have to press ShIFT+F10 to log a user off instead of just F10
  1580.     which is safer, no more accidental logoffs
  1581.  
  1582.     Runs a system door called Speed_<baudrate> after frontend.
  1583.     (still displays the screen too...)
  1584.  
  1585.     You can press F4 to re-display the await connect screen
  1586.  
  1587. 2-11-1995
  1588. =========
  1589.  
  1590.   Doh, I'm slipping, not been doing any coding for ages again,  it's this damn
  1591.   new playstation games that I've bought.. :-)  Too many games coming out
  1592.   on it now!
  1593.  
  1594.   Oh nooo!!  I just remembered, my new *arcade* machine is arriving next week
  1595.   complete with magic sword, gryzor, rygar and snow brothers P.C.B's..  That means
  1596.   at least a week of no more coding...
  1597.  
  1598.   ExtractDIZ
  1599.   ----------
  1600.  
  1601.   Did a bit more work on it..  It's getting there...
  1602.  
  1603. 24-10-1995
  1604. ==========
  1605.  
  1606.   ExtractDIZ
  1607.   ----------
  1608.  
  1609.   Created door, not finished in today's session..
  1610.   It will be a dual function door that will ADD and EXTRACT/UPDATE file id's from/to
  1611.   uploaded files...  you specify the mode using N_ND->ActiveDoor.SystemOptions
  1612.  
  1613.   AwaitConnect
  1614.   ------------
  1615.  
  1616.   Added F5, Toggle Modem Debug
  1617.  
  1618.  
  1619.   Who
  1620.   ---
  1621.   Changed ANSI
  1622.  
  1623.  
  1624.   Wall
  1625.   ----
  1626.   Changed ANSI
  1627.   Added a line of -'s to the top of the screen before the wall lines are printed
  1628.   only adds lines to the wall if the line is 4 chars or more
  1629.  
  1630.  
  1631.   CheckTags
  1632.   ---------
  1633.  
  1634.   Re-Wrote most of the CheckTags door.
  1635.   It's now LOADS smaller, and much more optimized
  1636.   It does not call the Add_Tags door once for each file the user wants to tag,
  1637.   instead it calls it once with all the files to tag as parameters
  1638.   Added help to it
  1639.   fixed all bugs with old version (due to re-write..)
  1640.   it now will ignore spaces before,between and after parameters.
  1641.   (other door writers should take note of how this is done, check out the source..)
  1642.  
  1643. 17-10-1995
  1644. ==========
  1645.  
  1646.   Created CheckFiles door, created CLIProtocol door uploading to the node's playpen
  1647.   now works!
  1648.  
  1649.   Modified the protocols a little bit (see struct ProtocolNode in structures.h)
  1650.  
  1651. 11-10-1995
  1652. ==========
  1653.  
  1654.   Control
  1655.   -------
  1656.  
  1657.     Removed enforcer hit when "control" closes.
  1658.  
  1659.   Node
  1660.   ----
  1661.  
  1662.     Node's now save their screenmode preferences to hbbs:system/data/nodex_private.cfg
  1663.  
  1664.     to save a node's window position and screenmode click the "Save Windows"
  1665.     button on the node's settings window.
  1666.  
  1667.     Removed enforcer hit after a node shuts down.
  1668.  
  1669.   NewUser
  1670.   -------
  1671.  
  1672.     NoNewAt_<BAUD>.TXT works
  1673.  
  1674.   HBBSNode
  1675.   --------
  1676.  
  1677.     Added DOOR_PausePrompt(char *prompt) to the library.
  1678.     it does the same as a @^PAUSE^@ command in a screen file...
  1679.  
  1680.  
  1681.   Ahh shit, not worked on hbbs for 2 weeks. At this rate it's never gonna
  1682.   get finished!
  1683.  
  1684. 25-09-1995
  1685. ==========
  1686.  
  1687. Wrote the Select_Mode utility (HBBS:Utils/Select_Mode)
  1688.  
  1689. Changed the "SetupAssigns" script.
  1690.  
  1691. The docs (BBSGlobal.Guide has not been updated yet!)
  1692.  
  1693. The current mail doors (MS, R, E and C at the bbs prompt) will be scrapped
  1694. as my (little) brother wrote them and they're shite and full of memory leaks!
  1695.  
  1696. Check out HBBS:Docs/Doors.TXT for full explanation of how each door works!
  1697. (note, I've just started working out how the new mail doors will work)
  1698.  
  1699.  
  1700.   Control
  1701.   -------
  1702.     Moved scr#? options from BBSGlobal to seperate file
  1703.  
  1704.     The Save Button on the Config window now works!
  1705.  
  1706.  
  1707.   Node
  1708.   ----
  1709.     The scr#? settings in NodeGlobal and NodeLocal still work, but they
  1710.     will also be moved to a seperate file soon!
  1711.  
  1712.     You can now have a door type CLI as well as NORMAL in the Command list
  1713.     files (HBBS:Commands/System), e.g.
  1714.  
  1715.       FrontEnd_Type_1=NORMAL
  1716.       FrontEnd_Door_1=HBBS:Doors/System/FrontEnd/FrontEnd.HBBS
  1717.       FrontEnd_Type_2=CLI
  1718.       FrontEnd_Door_2=HBBS:Scripts/CheckMem
  1719.  
  1720.       The "Checkmem" program above is a normal amigados program.
  1721.  
  1722.       note: the node number is still added to the programs arguments,
  1723.       as are the BBS Prompt commands!  (great for shells eh!!)
  1724.  
  1725.   CheckTags
  1726.   ---------
  1727.     you can go "A *" to clear all file tags at the BBS prompt
  1728.  
  1729.     added a few more printed messages
  1730.  
  1731.   HBBSCommon.library
  1732.   ------------------
  1733.  
  1734.     FreeStr() now actually sets the variable being freed to NULL regardless
  1735.     of a call to freevec()
  1736.  
  1737.